home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BBS Toolkit
/
BBS Toolkit.iso
/
doors_1
/
gapqbdr.zip
/
WHATSNEW.TXT
< prev
Wrap
Text File
|
1990-12-02
|
8KB
|
188 lines
12/02/90
Modified the COM routines so that all local data is contained
in the Code Segment of the GAPCOM module instead of the
default Data Segment.
This will eliminate the problem some programmers were having
with their doors in that the door could only be run once (under
DesqView). On any subsequent runs, all incomming data from the
remote caller was being vectored to some unknown interrupt handler,
instead of GAPQBDR's own handler.
Hopefully, this will also eliminate the lock up problems some
were having when their door exits back to the BBS system.
12/01/90
Modified the timecredit variable so that it is no longer
initialized with the timecredits as written to DOOR.SYS.
When writing DOOR.SYS, GAP writes the actual time
remaining and this time includes any timecredits the caller
may have. However, when figuring time left, GAPQBDR takes
into consideration the time credits, so if a caller had
10 minutes left and -10 time credits (in GAP), the door
program would log the caller off for lack of time.
You may still use the timecredit variable as before, however
if you intend to update DOOR.SYS with any timecredits given
or taken away from the caller, you must add your timecredits
to a new variable called
realcredit
before updating DOOR.SYS.
Realcredit contains the actual BBS timecredits. It is not used
in figuring time left for a caller while in the door, since
the BBS program is supposed to write the actual time left to
DOOR.SYS.
07/08/90
GAPQBDR has been updated so that it now reads the new fields
in DOOR.SYS. In addition, in a PCB system, the 3 files,
PCBOARD.DAT, PCBOARD.SYS, and USERS are no longer read.
Instead, GAPQBDR will read the DOOR.SYS file that PCB now
writes to obtain the information required to operate.
The following variables have been declared and are available
for use. These variables are read from some of the new fields
in DOOR.SYS:
COMMON SHARED dflt.color AS INTEGER ' BBS default color
COMMON SHARED maxfiles AS INTEGER ' Max files available
COMMON SHARED curfiles AS INTEGER ' Current files downloaded
COMMON SHARED doors.open AS LONG ' Total doors opened
COMMON SHARED mesleft AS LONG ' Total messages left
COMMON SHARED downbytes AS LONG; ' total download bytes
COMMON SHARED handle AS STRING ' caller's Handle
COMMON SHARED event.time AS STRING ' event run time
COMMON SHARED last.new AS STRING ' last new files scan
GAPQBDR is now compatible with BASIC 7. This required but a very
minor change to one of the functions. However, it was a frustating
time, to say the least. In our 'C' programming, we use the
Alternate Math Library as this results in a 10k decrease in CODE
size. So, we set out to install BASIC 7 using the Alternate Math
Library. To utilize this library, you compile your modules using
the /FPa switch. Everything compiles just fine, but when trying
to create the GAPQBDR Quick Library, the Linker complains of
"unresolved external references". After many frustrating hours, we
decided to install BASIC 7 with the Emulator Library (the
default). This Math Library works just fine and so we will just
leave it at that and not attempt to waste any more time trying
to determine why the Alternate Math Library does not work.
There are two ZIP files contained within GAPQBDR that contain the
actual LIB and QLB files. One is for BASIC 7 (or QBX) and the
other is for QB 4.5.
NOTE (09/02/90):
The Quick Library for BASIC 7 has been removed from GAPQBDR.
It seems that the only way to create a 'workable' QLB for
QBX is to use /Fs (far strings). This will create a GAPQBDR.QLB
that QBX can load, but your programs will not work correctly.
GAPQBDR was not written to take advantage of any so called
"features" of BASIC 7 (Far Strings being one of them), so if
you use BASIC 7, you will need to do your compiling using BC.
12/16/89
Updated the GAPDOS record structure to be compatible with the
current version of GAP.
Fixed a problem with dropped carriers and PCB.
10/01/89
Changes to your source file:
If you called previously undocumented GAPQBDR routines,
you will need to include GAPQBSRC.BI right after GAPQBDR.BI.
Previously undocumented functions are now fully referenced
in the printed manual. GAPQBSRC.BI contains the function
declarations for these routines as well as declarations
for the private variables. If you receive a "Sub Program
Not Defined" or an unresolved external reference, you
probably need to include GAPQBSRC.BI.
The error handler is now part of your source modules. It
is in GAPQBERR.BI and MUST be included AFTER any declarations
but BEFORE any basic statments.
' $INCLUDE: 'gapqberr.bi'
In other words, it is in included after any variable
declarations and before any executible statments. Note
that A$ = "This is a sting" is a statment and not a variable
declaration.
Because the error handler is now a part of your program, you must
use the /x switch when compiling your source module.
Please refer to the EXAMPLE.BAS program for more information
as to how the error handler is included in your programs.
A number of new routines were added to this release. These new
functions (as well as descriptions of previously undocumented
routines) are fully referenced in the printed manual.
This release of GAPQBDR requires that the GAP system be at
version 4.3 or higher. New fields were added to DOOR.SYS and
only GAP versions at or above 4.3 are able to write them.
Your previously compiled doors will continue to operate
normally. This change affects only newly compiled programs.
If you licensed the source code, there is additional information
contained within SRCREAD.ME. In addition, you will find that
the source modules were broken up into smaller pieces and that
most of the private routines are now provided.
08/28/89
GAPQBDR now utilizes all new communications routines. It is no
longer dependant upon QB to handle communications I/O. What
this means to you, the programmer, is that you no longer need
worry about your end users having a DTR patched version of
BRUN45.EXE. In addition, those "device time out" and "bad file
number" errors QB gives us when it has problems with the COM
port are eliminated.
The communications routines are written in assembler for speed
and compactness. They are capable of handling any com port you
have set up, however we have limited them to COM 1 - COM 4. They
support speeds to 38.4k, and will automatically use the 16550
FIFO buffer if that chip is installed.
Because of these modifications, you will need to make changes to
your source code if you accessed the com port directly or
through file #9. The communications routines are documented in
the printed manual only.
It is of vital importance that you exit your door via the
leave function. Failure to do so will leave communications
interrupts active which will cause your computer to lock up at
some point.
The GAPQBDR environment variable is no longer used to specify
that the BBS is a PCB system. Instead, line 3 of the door
configuration file is used for this purpose. On line 3 of that
file, enter (or have your end users enter) a 1 if the BBS
is PCB, or 0 for a GAP system. The default is still GAP mode so
if anything other than a 1 is found on line 3 of the configuration
file, GAPQBDR will assume the BBS is GAP. Any options you may
need for a particular door will begin on line 4.